﻿//==================================================================
// Copyright (C) 2015 福流网络
// 作 者：江怀玉
// 日 期：2015-04-22
// 描 述：页面基类，所有的aspx页面继承自基类
//        页面基类提供常用的方法和常用的用户信息
// 版 本：1.00
// 修改历史纪录
// 版 本  修改时间      修改人       修改内容
// 1.00   2015/4/22   江怀玉           
//==================================================================
using System;
using System.IO;
using System.Web;
using System.Collections.Specialized;
using FL.Bussiness;
using FL.DBModule.Sys;
using FL.Common;
using FL.Bussiness.Sys;
using System.Web.UI;
using System.Web.Security;

using System.Text.RegularExpressions;

namespace FL.Web.BackEnd
{
    public class LoginPage : BasePage
    {
        public void Login(string username, string password)
        {
            BUser buser = this._bll as BUser;
            SysUser user = buser.GetDatUserByName(username);
            
            if (user == null)
            {
                Response.Write("该用户不存在");
                Response.End();
                return;
            }
           
            if (user.user_type == 1 && FL.Common.AppSettingsHelper.GetString("CustomerClient") == "true")
            {
                Response.Write("此入口允许客户登陆！");
                Response.End();
                return;
            }

            if (user.user_type ==0 && FL.Common.AppSettingsHelper.GetString("CustomerClient") != "true")
            {
                Response.Write("此入口不允许客户登陆！");
                Response.End();
                return;
            }

            if (user.status == 1) {
                Response.Write("您的账号已停用！");
                Response.End();
                return;
            }


            if (user.expire_date != null && user.expire_date < System.DateTime.Now && user.expire_date != DateTime.Parse("1900-01-01")) 
            {
                Response.Write("该用户己经失效!");
            }
            if (password.VerifyMd5Hash(user.password))
            {
                SessionHelper.SetSession("User", user);
                FormsAuthentication.SetAuthCookie(user.username, true);
                string token = buser.PostToken(user, this.ClientIP);
                SessionHelper.SetSession("token", token);
                Response.Write("1");
            }
            else
            {
                Response.Write("用户密码错误，请重新输入!");
            }
            Response.End();
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            this._bll = new BUser();
            if (this.GetStringFromQueryString("action", "") == "login")
            {
                string username = this.Request["username"];
                string password = this.Request["password"];
                Login(username, password);
                Response.End();
                return;
            }
           
        }


        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
          
        }
    }
}
